[INFO] cloning repository https://github.com/yeliknewo/gba-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yeliknewo/gba-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyeliknewo%2Fgba-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyeliknewo%2Fgba-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 363d70b300677466ac8c46acc2df957021daeadd
[INFO] checking yeliknewo/gba-rs against master#af3c6e733a40e671550e0f0f5aeecaa13772ba56 for pr-74989
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyeliknewo%2Fgba-rs" "/workspace/builds/worker-5/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/yeliknewo/gba-rs on toolchain af3c6e733a40e671550e0f0f5aeecaa13772ba56
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/yeliknewo/gba-rs
[INFO] finished tweaking git repo https://github.com/yeliknewo/gba-rs
[INFO] tweaked toml for git repo https://github.com/yeliknewo/gba-rs written to /workspace/builds/worker-5/source/Cargo.toml
[INFO] crate git repo https://github.com/yeliknewo/gba-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] error: the lock file /workspace/builds/worker-5/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 6f0106e1e8cd4a82b13a6a9debdebc6ec1e6ad581e752c801a80ec37a6547282
[INFO] running `Command { std: "docker" "start" "-a" "6f0106e1e8cd4a82b13a6a9debdebc6ec1e6ad581e752c801a80ec37a6547282", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6f0106e1e8cd4a82b13a6a9debdebc6ec1e6ad581e752c801a80ec37a6547282", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6f0106e1e8cd4a82b13a6a9debdebc6ec1e6ad581e752c801a80ec37a6547282", kill_on_drop: false }`
[INFO] [stdout] 6f0106e1e8cd4a82b13a6a9debdebc6ec1e6ad581e752c801a80ec37a6547282
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 5822684c2b1c1c1c6bb0c83944e7944089b067f78da7c25116d6e36407610161
[INFO] running `Command { std: "docker" "start" "-a" "5822684c2b1c1c1c6bb0c83944e7944089b067f78da7c25116d6e36407610161", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling version_check v0.9.2
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling libc v0.2.77
[INFO] [stderr]    Compiling syn v1.0.41
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling const_fn v0.4.2
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling proc-macro-hack v0.5.18
[INFO] [stderr]     Checking regex-syntax v0.6.18
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]     Checking termcolor v1.1.0
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.21
[INFO] [stderr]     Checking humantime v1.3.0
[INFO] [stderr]     Checking getopts v0.2.21
[INFO] [stderr]    Compiling standback v0.2.10
[INFO] [stderr]    Compiling time v0.2.19
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling num-bigint v0.3.0
[INFO] [stderr]    Compiling num-rational v0.3.0
[INFO] [stderr]    Compiling num-iter v0.1.41
[INFO] [stderr]     Checking aho-corasick v0.7.13
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking num-complex v0.3.0
[INFO] [stderr]     Checking regex v1.3.9
[INFO] [stderr]     Checking env_logger v0.7.1
[INFO] [stderr]     Checking num v0.3.0
[INFO] [stderr]    Compiling time-macros-impl v0.1.1
[INFO] [stderr]     Checking time-macros v0.1.0
[INFO] [stderr]     Checking gba-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:40:139
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...der::<u16>(0x02), read_bios_builder::<u32>(0x0F), unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:40:159
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...ad_bios_builder::<u32>(0x0F), unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:40:183
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...x0F), unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:41:135
[INFO] [stdout]    |
[INFO] [stdout] 41 | ..._builder(),         unreadable_builder(),         unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:41:155
[INFO] [stdout]    |
[INFO] [stdout] 41 | ...unreadable_builder(),         unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:41:179
[INFO] [stdout]    |
[INFO] [stdout] 41 | ...      unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_generic_8` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:44
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...   MemAccess::new(0x0003FFFF, read_generic_8(2),   read_generic_16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),   ...
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_generic_16` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:65
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...   MemAccess::new(0x0003FFFF, read_generic_8(2),   read_generic_16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),   ...
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_generic_32` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:85
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...   MemAccess::new(0x0003FFFF, read_generic_8(2),   read_generic_16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),   ...
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `write_generic_8` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:105
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...   MemAccess::new(0x0003FFFF, read_generic_8(2),   read_generic_16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),   ...
[INFO] [stdout]    |                                                                                               ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `write_generic_16` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:125
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),    write_generic_32(3)),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `write_generic_32` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:149
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...), write_generic_8(2), write_generic_16(3),    write_generic_32(3)),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/main.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::size_of`
[INFO] [stdout]  --> src/mem_map.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::mem::size_of;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/mem_map.rs:7:69
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn read_bios_builder<T: Unsigned + FromPrimitive>(mask: u32) -> Box<Fn(u32, [u8; 4], u32, &MemMap) -> T> {
[INFO] [stdout]   |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> T`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:15:61
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn unreadable_builder<T: Unsigned + FromPrimitive>() -> Box<Fn(u32, [u8; 4], u32, &MemMap) -> T> {
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:23:55
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn unwritable_builder<T: Unsigned + PrimInt>() -> Box<Fn(u32, T)> {
[INFO] [stdout]    |                                                       ^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, T)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |     read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:88:18
[INFO] [stdout]    |
[INFO] [stdout] 88 |     read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u16`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:89:18
[INFO] [stdout]    |
[INFO] [stdout] 89 |     read_32: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u32>,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:98:21
[INFO] [stdout]    |
[INFO] [stdout] 98 |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:99:22
[INFO] [stdout]    |
[INFO] [stdout] 99 |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u16`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/mem_map.rs:100:22
[INFO] [stdout]     |
[INFO] [stdout] 100 |         read_32: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u32>,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:40:139
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...der::<u16>(0x02), read_bios_builder::<u32>(0x0F), unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:40:159
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...ad_bios_builder::<u32>(0x0F), unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:40:183
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...x0F), unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:41:135
[INFO] [stdout]    |
[INFO] [stdout] 41 | ..._builder(),         unreadable_builder(),         unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:41:155
[INFO] [stdout]    |
[INFO] [stdout] 41 | ...unreadable_builder(),         unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `unwritable` in this scope
[INFO] [stdout]   --> src/mem_map.rs:41:179
[INFO] [stdout]    |
[INFO] [stdout] 41 | ...      unwritable,         unwritable,             unwritable),
[INFO] [stdout]    |                                                      ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_generic_8` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:44
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...   MemAccess::new(0x0003FFFF, read_generic_8(2),   read_generic_16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),   ...
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_generic_16` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:65
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...   MemAccess::new(0x0003FFFF, read_generic_8(2),   read_generic_16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),   ...
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_generic_32` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:85
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...   MemAccess::new(0x0003FFFF, read_generic_8(2),   read_generic_16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),   ...
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `write_generic_8` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:105
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...   MemAccess::new(0x0003FFFF, read_generic_8(2),   read_generic_16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),   ...
[INFO] [stdout]    |                                                                                               ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `write_generic_16` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:125
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...16(2), read_generic_32(2), write_generic_8(2), write_generic_16(3),    write_generic_32(3)),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `write_generic_32` in this scope
[INFO] [stdout]   --> src/mem_map.rs:42:149
[INFO] [stdout]    |
[INFO] [stdout] 42 | ...), write_generic_8(2), write_generic_16(3),    write_generic_32(3)),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/main.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::size_of`
[INFO] [stdout]  --> src/mem_map.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::mem::size_of;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/mem_map.rs:7:69
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn read_bios_builder<T: Unsigned + FromPrimitive>(mask: u32) -> Box<Fn(u32, [u8; 4], u32, &MemMap) -> T> {
[INFO] [stdout]   |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> T`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:15:61
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn unreadable_builder<T: Unsigned + FromPrimitive>() -> Box<Fn(u32, [u8; 4], u32, &MemMap) -> T> {
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:23:55
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn unwritable_builder<T: Unsigned + PrimInt>() -> Box<Fn(u32, T)> {
[INFO] [stdout]    |                                                       ^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, T)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |     read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:88:18
[INFO] [stdout]    |
[INFO] [stdout] 88 |     read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u16`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:89:18
[INFO] [stdout]    |
[INFO] [stdout] 89 |     read_32: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u32>,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:98:21
[INFO] [stdout]    |
[INFO] [stdout] 98 |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/mem_map.rs:99:22
[INFO] [stdout]    |
[INFO] [stdout] 99 |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u16`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/mem_map.rs:100:22
[INFO] [stdout]     |
[INFO] [stdout] 100 |         read_32: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u32>,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(u32, [u8; 4], u32, &MemMap) -> u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for unit type `()` in the current scope
[INFO] [stdout]   --> src/main.rs:23:24
[INFO] [stdout]    |
[INFO] [stdout] 23 |     env_logger::init().unwrap();
[INFO] [stdout]    |                        ^^^^^^ method not found in `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for unit type `()` in the current scope
[INFO] [stdout]   --> src/main.rs:23:24
[INFO] [stdout]    |
[INFO] [stdout] 23 |     env_logger::init().unwrap();
[INFO] [stdout]    |                        ^^^^^^ method not found in `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_32` found for struct `MemMap` in the current scope
[INFO] [stdout]    --> src/cpu.rs:504:45
[INFO] [stdout]     |
[INFO] [stdout] 504 |         self.cpu_prefetch[0] = self.mem_map.read_32(self.arm_next_pc);
[INFO] [stdout]     |                                             ^^^^^^^ method not found in `MemMap`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/mem_map.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | pub struct MemMap {
[INFO] [stdout]     | ----------------- method `read_32` not found for this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_32` found for struct `MemMap` in the current scope
[INFO] [stdout]    --> src/cpu.rs:505:45
[INFO] [stdout]     |
[INFO] [stdout] 505 |         self.cpu_prefetch[1] = self.mem_map.read_32(self.arm_next_pc + 4);
[INFO] [stdout]     |                                             ^^^^^^^ method not found in `MemMap`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/mem_map.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | pub struct MemMap {
[INFO] [stdout]     | ----------------- method `read_32` not found for this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_32` found for struct `MemMap` in the current scope
[INFO] [stdout]    --> src/cpu.rs:504:45
[INFO] [stdout]     |
[INFO] [stdout] 504 |         self.cpu_prefetch[0] = self.mem_map.read_32(self.arm_next_pc);
[INFO] [stdout]     |                                             ^^^^^^^ method not found in `MemMap`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/mem_map.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | pub struct MemMap {
[INFO] [stdout]     | ----------------- method `read_32` not found for this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_unreadable` found for reference `&MemMap` in the current scope
[INFO] [stdout]   --> src/mem_map.rs:18:21
[INFO] [stdout]    |
[INFO] [stdout] 18 |             mem_map.read_unreadable()
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ method not found in `&MemMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0593]: closure is expected to take 2 arguments, but it takes 3 arguments
[INFO] [stdout]   --> src/mem_map.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |           |_, _, mem_map: &mut MemMap| {
[INFO] [stdout]    |           ^---------------------------
[INFO] [stdout]    |           |
[INFO] [stdout]    |  _________takes 3 arguments
[INFO] [stdout]    | |
[INFO] [stdout] 26 | |             mem_map.write_unwritable()
[INFO] [stdout] 27 | |         }
[INFO] [stdout]    | |_________^ expected closure that takes 2 arguments
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_32` found for struct `MemMap` in the current scope
[INFO] [stdout]    --> src/cpu.rs:505:45
[INFO] [stdout]     |
[INFO] [stdout] 505 |         self.cpu_prefetch[1] = self.mem_map.read_32(self.arm_next_pc + 4);
[INFO] [stdout]     |                                             ^^^^^^^ method not found in `MemMap`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/mem_map.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout] 31  | pub struct MemMap {
[INFO] [stdout]     | ----------------- method `read_32` not found for this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:43:17
[INFO] [stdout]     |
[INFO] [stdout] 43  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:44:17
[INFO] [stdout]     |
[INFO] [stdout] 44  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:46:17
[INFO] [stdout]     |
[INFO] [stdout] 46  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:47:17
[INFO] [stdout]     |
[INFO] [stdout] 47  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:48:17
[INFO] [stdout]     |
[INFO] [stdout] 48  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:49:17
[INFO] [stdout]     |
[INFO] [stdout] 49  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:50:17
[INFO] [stdout]     |
[INFO] [stdout] 50  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:52:17
[INFO] [stdout]     |
[INFO] [stdout] 52  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:53:17
[INFO] [stdout]     |
[INFO] [stdout] 53  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:54:17
[INFO] [stdout]     |
[INFO] [stdout] 54  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:55:17
[INFO] [stdout]     |
[INFO] [stdout] 55  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_unreadable` found for reference `&MemMap` in the current scope
[INFO] [stdout]   --> src/mem_map.rs:18:21
[INFO] [stdout]    |
[INFO] [stdout] 18 |             mem_map.read_unreadable()
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ method not found in `&MemMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:56:17
[INFO] [stdout]     |
[INFO] [stdout] 56  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0593]: closure is expected to take 2 arguments, but it takes 3 arguments
[INFO] [stdout]   --> src/mem_map.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |           |_, _, mem_map: &mut MemMap| {
[INFO] [stdout]    |           ^---------------------------
[INFO] [stdout]    |           |
[INFO] [stdout]    |  _________takes 3 arguments
[INFO] [stdout]    | |
[INFO] [stdout] 26 | |             mem_map.write_unwritable()
[INFO] [stdout] 27 | |         }
[INFO] [stdout]    | |_________^ expected closure that takes 2 arguments
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:43:17
[INFO] [stdout]     |
[INFO] [stdout] 43  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:44:17
[INFO] [stdout]     |
[INFO] [stdout] 44  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:46:17
[INFO] [stdout]     |
[INFO] [stdout] 46  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:47:17
[INFO] [stdout]     |
[INFO] [stdout] 47  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:48:17
[INFO] [stdout]     |
[INFO] [stdout] 48  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:49:17
[INFO] [stdout]     |
[INFO] [stdout] 49  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:50:17
[INFO] [stdout]     |
[INFO] [stdout] 50  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:52:17
[INFO] [stdout]     |
[INFO] [stdout] 52  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:53:17
[INFO] [stdout]     |
[INFO] [stdout] 53  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:54:17
[INFO] [stdout]     |
[INFO] [stdout] 54  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:55:17
[INFO] [stdout]     |
[INFO] [stdout] 55  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 7 arguments but 0 arguments were supplied
[INFO] [stdout]    --> src/mem_map.rs:56:17
[INFO] [stdout]     |
[INFO] [stdout] 56  |                   MemAccess::new(),
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^-- supplied 0 arguments
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   expected 7 arguments
[INFO] [stdout] ...
[INFO] [stdout] 96  | /     pub fn new(
[INFO] [stdout] 97  | |         mask: u32,
[INFO] [stdout] 98  | |         read_8: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u8>,
[INFO] [stdout] 99  | |         read_16: Box<Fn(u32, [u8; 4], u32, &MemMap) -> u16>,
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | |         write_32: u32
[INFO] [stdout] 104 | |     ) -> MemAccess {
[INFO] [stdout]     | |__________________- defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/mem_map.rs:65:25
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 read_le(address & mask, &cpu_protected)
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^ expected `&[u8]`, found `u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/mem_map.rs:65:25
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 read_le(address & mask, &cpu_protected)
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^ expected `&[u8]`, found `u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/mem_map.rs:65:41
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 read_le(address & mask, &cpu_protected)
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^ expected `u32`, found `&[u8; 4]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_unreadable` found for reference `&MemMap` in the current scope
[INFO] [stdout]   --> src/mem_map.rs:67:22
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 self.read_unreadable()
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^ method not found in `&MemMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_generic` found for reference `&MemMap` in the current scope
[INFO] [stdout]   --> src/mem_map.rs:70:18
[INFO] [stdout]    |
[INFO] [stdout] 70 |             self.read_generic(address, 0)
[INFO] [stdout]    |                  ^^^^^^^^^^^^ help: there is an associated function with a similar name: `write_generic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0608]: cannot index into a value of type `&MemMap`
[INFO] [stdout]   --> src/read_bytes.rs:20:31
[INFO] [stdout]    |
[INFO] [stdout] 20 |     read_le(memory, address & mem_map[mask].mask)
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 34 previous errors; 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0308, E0425, E0593, E0599, E0608.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/mem_map.rs:65:41
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 read_le(address & mask, &cpu_protected)
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^ expected `u32`, found `&[u8; 4]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_unreadable` found for reference `&MemMap` in the current scope
[INFO] [stdout]   --> src/mem_map.rs:67:22
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 self.read_unreadable()
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^ method not found in `&MemMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_generic` found for reference `&MemMap` in the current scope
[INFO] [stdout]   --> src/mem_map.rs:70:18
[INFO] [stdout]    |
[INFO] [stdout] 70 |             self.read_generic(address, 0)
[INFO] [stdout]    |                  ^^^^^^^^^^^^ help: there is an associated function with a similar name: `write_generic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0608]: cannot index into a value of type `&MemMap`
[INFO] [stdout]   --> src/read_bytes.rs:20:31
[INFO] [stdout]    |
[INFO] [stdout] 20 |     read_le(memory, address & mem_map[mask].mask)
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `gba-rs`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 34 previous errors; 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0308, E0425, E0593, E0599, E0608.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "5822684c2b1c1c1c6bb0c83944e7944089b067f78da7c25116d6e36407610161", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5822684c2b1c1c1c6bb0c83944e7944089b067f78da7c25116d6e36407610161", kill_on_drop: false }`
[INFO] [stdout] 5822684c2b1c1c1c6bb0c83944e7944089b067f78da7c25116d6e36407610161
